package com.rogue.order.seckill.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.rogue.common.mybatis.base.BaseEntity;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;

/**
 * 优惠券表
 * @author YeahLiang
 * @TableName hs_coupon
 */
@TableName(value ="hs_coupon")
@Data
public class HsCoupon extends BaseEntity implements Serializable {
    /**
     * 优惠券ID
     */
    @TableId
    private Long id;

    /**
     * 优惠券使用类型：0-全场通用；1-指定分类；2-指定服务
     */
    private Integer type;

    /**
     * 优惠券编码
     */
    private Long couponNo;

    /**
     * 优惠券名称
     */
    private String name;

    /**
     * 数量
     */
    private Integer count;

    /**
     * 金额
     */
    private Integer amount;

    /**
     * 每人限领次数
     */
    private Integer perLimit;

    /**
     * 开始时间
     */
    private Date startTime;

    /**
     * 结束时间
     */
    private Date endTime;

    /**
     * 备注
     */
    private String note;

    /**
     * 发行数量
     */
    private Integer publishCount;

    /**
     * 已使用数量
     */
    private Integer usedCount;

    /**
     * 领取数量
     */
    private Integer receiveCount;

    /**
     * 可以领取的时间
     */
    private Date enableTime;

    /**
     * 优惠券类型：0-抵用；1-折扣
     * 抵用时，金额就是抵用的
     * 折扣时，金额就是多少折
     */
    private Integer couponType;

    /**
     * 优惠券状态：0-已过期；1-可使用；2-已使用
     */
    private Integer couponStatus;

    /**
     * 删除标志
     */
    @TableLogic
    private Integer isDeleted;


    @TableField(exist = false)
    private static final long serialVersionUID = 1L;
}